import {reqBannerList, reqCategoryList, reqFloorList} from '@/api'
const state = {
  // state内部的数据，不是永久存储了，项目重新启动（自己刷新），state率先会重新初始化
  categoryList:[], //初始化数据
  bannerList:[],
  floorList:[]
}
const mutations = {
  RECEIVE_CATEGORYLIST(state,categoryList){
    state.categoryList = categoryList
  },

  RECEIVE_BANNERLIST(state,bannerList){
    state.bannerList = bannerList
  },

  RECEIVE_FLOORLIST(state,floorList){
    state.floorList = floorList
  }

}
const actions = {
  //异步请求获取数据，提交给mutations，修改state的对应数据
  // getCategoryList({commit}){
  //   reqCategoryList().then((response) => {
  //     commit('RECEIVE_CATEGORYLIST',response.data)
  //   })
  // }
  // async 和 await 使用同步代码达到解决异步效果

  async getCategoryList({commit}){
    const result = await reqCategoryList()
    if(result.code === 200){
      commit('RECEIVE_CATEGORYLIST',result.data)
    }
  },


  async getBannerList({commit}){
    const result = await reqBannerList()
    if(result.code === 200){
      commit('RECEIVE_BANNERLIST',result.data)
    }
  },

  async getFloorList({commit}){
    const result = await reqFloorList()
    if(result.code === 200){
      commit('RECEIVE_FLOORLIST',result.data)
    }
  }

}

const getters = {}

export default {
  state,
  mutations,
  actions,
  getters
}